<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 字符类：[] 表示有一系列字符可供选择，只要匹配其中一个就可以了
        var rg = /[abc]/; //只要包含有a 或者包含有b 或者包含有c 都返回为true
        console.log(rg.test("andy")); //true
        console.log(rg.test('red')); //false
        var reg = /^[abc]$/; //表示三选一 只有是a 或者b 或者c这三个字母才返回true
        console.log(reg.test('a')); //true
        console.log(reg.test('aa')); //false
        console.log("----------------");

        var reg1 = /^[a-z]$/; //26个英文字母任何一个字母返回true
        console.log(reg1.test('a')); //true
        console.log(reg1.test(1)); //false
        console.log(reg1.test('A')); //false
        // 字符组合
        var reg = /^[a-zA-Z]$/; //26个英文字母(大写和小写都可以)任何一个字母返回true
        console.log(reg1.test('a')); //true
        console.log(reg1.test(1)); //true
        console.log(reg1.test('A')); //false
        console.log("----------------");

        //如果中括号里面有^ 表示取反的意思 千万别和边界符^混淆了
        var reg2 = /^[^a-zA-Z0-9_-]$/;
        console.log(reg2.test('a')); //false
        console.log(reg2.test(1)); //false
        console.log(reg2.test('A')); //false
        console.log(reg2.test('!')); //true
    </script>
</body>

</html>